package com.dyna.cp.mybatis.domain.dto;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentStyle;
import com.alibaba.excel.annotation.write.style.HeadStyle;
import com.alibaba.excel.enums.poi.HorizontalAlignmentEnum;
import com.alibaba.excel.enums.poi.VerticalAlignmentEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

@Data
@ApiModel("导出计划信息")
public class ZsdPlanExcelDto {

    /** ----------------------------任务信息---------------------------- **/
    @ApiModelProperty("计划编号")
    @ExcelProperty(value = {"模板导出清单", "计划编号"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String planNo;

    @ApiModelProperty("计划名称")
    @ExcelProperty(value = {"模板导出清单", "计划名称"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String name;

    @ApiModelProperty("审核单位")
    @ExcelProperty(value = {"模板导出清单", "审核单位"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String auditDeptName;


    /** ----------------------------任务单位信息---------------------------- **/
    @ApiModelProperty(value = "任务类型", notes = "（0增长率类、1总量类、2非量化类、3增长率&总量类）")
    @ExcelProperty(value = {"模板导出清单", "任务类型"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String taskType;

    @ApiModelProperty(value = "周期类型", notes = "0月度、1季度、2半年、3年度")
    @ExcelProperty(value = {"模板导出清单", "周期类型"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String cycleType;

    @ApiModelProperty(value = "计划状态", notes = "0未提交,1待审核,2审核成功,3审核驳回")
    @ExcelProperty(value = {"模板导出清单", "计划状态"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String planStatus;


    /** ----------------------------任务单位详细计划信息---------------------------- **/
    @ApiModelProperty("任务时限")
    @ExcelProperty(value = {"模板导出清单", "任务时限"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String taskTime;

    @ApiModelProperty("目标增长率")
    @ExcelProperty(value = {"模板导出清单", "目标增长率"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String targetGrowthRate;

    @ApiModelProperty("目标增长率排名")
    @ExcelProperty(value = {"模板导出清单", "目标增长率排名"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String targetGrowthRateRank;

    @ApiModelProperty("目标完成量")
    @ExcelProperty(value = {"模板导出清单", "目标完成量"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String targetCompletionQuantity;

    @ApiModelProperty("目标完成量单位")
    @ExcelProperty(value = {"模板导出清单", "目标完成量单位"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String targetCompletionQuantityUnit;

    @ApiModelProperty("目标完成量排名")
    @ExcelProperty(value = {"模板导出清单", "目标完成量排名"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String targetCompletionQuantityRank;

    @ApiModelProperty("排名说明")
    @ExcelProperty(value = {"模板导出清单", "排名说明"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String targetRemark;

    @ApiModelProperty("工作目标")
    @ExcelProperty(value = {"模板导出清单", "工作目标"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String jobGoals;


    /** ----------------------------任务进展---------------------------- **/
    @ApiModelProperty("实际增长率")
    @ExcelProperty(value = {"模板导出清单", "实际增长率"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String actualGrowthRate;

    @ApiModelProperty("实际增长率排名")
    @ExcelProperty(value = {"模板导出清单", "实际增长率排名"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String actualGrowthRateRank;

    @ApiModelProperty("实际完成量")
    @ExcelProperty(value = {"模板导出清单", "实际完成量"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String actualCompletionQuantity;

    @ApiModelProperty("实际完成量排名")
    @ExcelProperty(value = {"模板导出清单", "实际完成量排名"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String actualCompletionQuantityRank;

    @ApiModelProperty("实际金华排名")
    @ExcelProperty(value = {"模板导出清单", "实际金华排名"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String actualRemark;

    @ApiModelProperty("进展状态")
    @ExcelProperty(value = {"模板导出清单", "进展状态"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String fillingStatus;

    @ApiModelProperty(value = "评价状态", notes = "(0正常,1滞后,2严重滞后、3全年已完成)")
    @ExcelProperty(value = {"模板导出清单", "评价状态"})
    @ColumnWidth(40)
    @HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    @ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER, verticalAlignment = VerticalAlignmentEnum.CENTER)
    private String evalStatus;

}
